package chapter02

import chapter01.Student

object Test02_Variable {
  def main(args: Array[String]): Unit = {
    //声明一个变量的通用语法
    var a: Int = 10
    //（1）声明变量时，类型可以省略，编译器自动推导，即类型推导
    var a1 = 10
    val a2 = "hello"
    //（2）类型确定后，就不能修改，说明 Scala 是强数据类型语言。
    /**
     * type mismatch;
     * found   : Double(12.5)
     * required: Int
     * a1 = 12.5
     */
    //（3）变量声明时，必须要有初始值 ====> var ar3 wrong
    //（4）在声明/定义一个变量时，可以使用 var 或者 val 来修饰，var 修饰的变量可改变，  a1 = 15  √  a2 = "test"×
    val alice = new Student("alice", 20)
    //可以修改alice内部的值，但是alice的引用指向不能修改。
    alice.age = 21;
    alice.printInfo();
  }
}
